A challenge faced by many Web sites is the provision of dynamic content, i.e., content that changes in real-time. This requires applications to be run from Web servers and transported via an appropriate protocol. A dynamic web content model allows World Wide Web (WWW) content providers to provide web services, such as interactive business applications, rather than merely publishing pages of static information.
Web services are used by businesses to interact via distributed environments, such as the Internet or WWW. To ensure that these interactions are accomplished successfully, transport mechanisms must be in place for carrying messages to and from participants, and specific business applications must be in place at each participants end. These interactions, by their very nature are message driven. For example, a buyer sends a purchase order to a seller. The seller then checks its inventory to determine if it can provide the ordered items. The seller then sends an acknowledgement back to the buyer with a price. Finally, the buyer accepts or rejects the sellers offer (and possibly places another order). As evident in this example, each participant's business application reacts to the receipt of messages, which may be received at any time. Thus, a participant's business application should be able to receive, and send, messages to conduct business transactions in an asynchronous manner. To successfully conduct a business transaction, a participant's asynchronous transactional messaging business application should be able to communicate with another participant's asynchronous transactional messaging business application via the transport mechanism. Also, each asynchronous transactional messaging business application should be able to communicate with the transport mechanism, while complying with the transport mechanism's protocol.
However, all transport mechanisms are not compatible with all business applications. A possible solution to force compatibility is to require each participant to write its asynchronous transactional messaging business application using instructions that are specifically tailored to comply with every protocol requirement of the transport mechanism. This is difficult, if not impossible for every situation. A participant would have to know the exact requirements of the protocol of the mechanism to be used. This is not always known in advance. Also, it would be extremely difficult and time consuming to program an asynchronous transactional messaging business application to address every protocol requirement. This level of difficulty would deter potential participants from using that business application. In order for businesses to use web services, the web services should be user friendly. That is, complex, intricate programming steps should be transparent to the participant. The participant should be able to generate high level business applications utilizing nomenclature and concepts familiar to the participant and normally used in the specific business.
Therefore, techniques for providing compatibility between asynchronous transactional messaging applications and web services that are transparent to the participant are desired.